package org.xp.judgeplatform.service;

import org.springframework.web.multipart.MultipartFile;
import org.xp.judgeplatform.pojo.dto.UserDTO.UserLoginDTO;
import org.xp.judgeplatform.pojo.dto.UserDTO.UserRegisterDTO;
import org.xp.judgeplatform.pojo.dto.UserDTO.UserProfileDTO;
import org.xp.judgeplatform.pojo.dto.UserDTO.UserPasswordDTO;
import org.xp.judgeplatform.pojo.vo.UserVO.UserVO;

public interface UserService {

    UserVO login(UserLoginDTO userLoginDTO);

    UserVO register(UserRegisterDTO userRegisterDTO);

    UserVO updateUserInfo(Integer userId, UserProfileDTO userProfileDTO);

    String updateAvatar(Integer userId, MultipartFile avatar);
    
    void changePassword(Integer userId, UserPasswordDTO userPasswordDTO);
}